]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Do not fail if json Python module is not available
authorFrédéric Péters <fpeters@0d.be>
Tue, 25 May 2010 14:31:15 +0000 (16:31 +0200)
committerFrédéric Péters <fpeters@0d.be>
Tue, 25 May 2010 14:32:56 +0000 (16:32 +0200)
Fallback to old simplejson module if present, and options that require
the json module (create extension and performance) if absent.

https://bugzilla.gnome.org/show_bug.cgi?id=619580

src/gnome-shell.in

index c1a439dd7d7b76b1c495759e39b766ce2fdc09f2..772a8cf6f38bf415a6acc2fbe68cc8e06a0ffb3f 100644 (file)
@@ -3,7 +3,13 @@
 
 import atexit
 import datetime
-import json
+try:
+    import json
+except ImportError:
+    try:
+        import simplejson as json
+    except ImportError:
+        json = None
 import optparse
 import os
 import random
@@ -548,9 +554,15 @@ if args:
     parser.print_usage()
     sys.exit(1)
 
-if options.create_extension:
-    import json
+if options.create_extension and json is None:
+    print 'The Python simplejson module is required to create a new GNOME Shell extension'
+    sys.exit(1)
+
+if options.perf and json is None:
+    print 'The Python simplejson module is required for performance tests'
+    sys.exit(1)
 
+if options.create_extension:
     print
     print '''Name should be a very short (ideally descriptive) string.
 Examples are: "Click To Focus",  "Adblock", "Shell Window Shrinker".